Skip to content

feat: add Nova 5 support#2

Open
alies-dev wants to merge 1 commit intomasterfrom
feat/nova-5-support
Open

feat: add Nova 5 support#2
alies-dev wants to merge 1 commit intomasterfrom
feat/nova-5-support

Conversation

@alies-dev
Copy link
Copy Markdown
Member

Summary

  • composer.json: Bump PHP to ^8.1, move laravel/nova to require-dev at ^5.0, add laravel/nova-devtool ^1.7 and illuminate/support, remove hardcoded Nova repository URL
  • Asset registration: Switch from Nova::script() to Nova::mix() with mix-manifest.json for proper cache-busting
  • Build system: Use laravel-nova-devtool Mix extension instead of manual webpack externals config
  • package.json: Remove vue-loader, vue-template-compiler, and vue (provided externally by Nova), add nova:install script
  • Vue components: Replace removed <default-button> Nova component with native <button>/<a> elements
  • JS entry point: Update Nova.booting() callback signature from (Vue) to (app, store) per Nova 5 convention
  • Service provider: Add route cache guard, modernize PHP with return types

Test plan

  • Run composer install in a Nova 5 project with this package
  • Run npm run nova:install && npm install && npm run prod to build assets
  • Verify all chart types render on a Nova dashboard (Bar, Stacked, Line/Area, Doughnut, Pie, PolarArea, Scatter)
  • Verify refresh/reload buttons work
  • Verify external link buttons work
  • Verify filter dropdowns work with model-based charts
  • Verify data labels plugin works when enabled

- Update composer.json: bump PHP to ^8.1, move laravel/nova to require-dev at ^5.0,
  add laravel/nova-devtool ^1.7, add illuminate/support, remove hardcoded Nova repository
- Switch asset registration from Nova::script() to Nova::mix() with mix-manifest.json
- Update webpack.mix.js to use laravel-nova-devtool extension instead of manual externals
- Update package.json: remove vue-loader, vue-template-compiler, and vue (provided by Nova)
- Add nova:install script for npm
- Replace removed <default-button> Nova component with native <button>/<a> elements
- Update Nova.booting() callback signature from (Vue) to (app, store)
- Add route cache guard to service provider
- Modernize PHP with return types
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant